package model

import (
	"fmt"
)

// 自己造一个提示错误的结构体，后面支持2种方式返回错误！
type ErrOut struct {
	Where  string
	Detail string
}

// 实现error接口，NewError得到的错误对象可以调用它得到提示错误的字符串
func (e *ErrOut) Error() string {
	return fmt.Sprintf("where: %s, detail: %s ", e.Where, e.Detail)
}

// 这种定义与返回的方式要求ErrOut结构体必须实现error接口！
func NewError(where, detail string) error {
	return &ErrOut{
		Where:  where,
		Detail: detail,
	}
}
